package com.transpot.entry.driver;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.time.LocalDateTime;
import java.util.Date;

/**
 * 司机信息实体类
 */
@Data
public class Driver {
    /**
     * 司机表主键, @TableId用来标注ID在数据表的生成策略，AUTO是自动递增的意思
     */
    @TableId(type = IdType.AUTO)
    private Integer id;
    /**
     * 司机姓名
     */
    private String name;
    /**
     * 性别， 0为男， 1为女
     */
    private Integer sex;
    /**
     * 年龄
     */
    private Integer age;
    /**
     * 电子邮箱
     */
    private String email;
    /**
     * 身份证号码
     */
    private String idNumber;
    /**
     * 初次领驾照日期
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd")                    // 表示返回时间类型
    @JsonFormat(pattern="yyyy-MM-dd", timezone = "GMT+8")      // 表示接收时间类型
    private Date firstTime;
    /**
     * 驾照到期时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd")                    // 表示返回时间类型
    @JsonFormat(pattern="yyyy-MM-dd", timezone = "GMT+8")      // 表示接收时间类型
    private Date exp;
    /**
     * 联系方式
     */
    private String phone;
    /**
     * 证件类型
     */
    private String type;
    /**
     * 驾龄是否三年
     */
    private String isSatisfy;
    /**
     * 账号
     */
    private String username;
    /**
     * 密码
     */
    private String password;
    /**
     * 创建时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd hh:mm:ss")                    // 表示返回时间类型
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")      // 表示接收时间类型
    private LocalDateTime createTime;
    /**
     * 修改时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd hh:mm:ss")                    // 表示返回时间类型
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")      // 表示接收时间类型
    private LocalDateTime updateTime;
    /**
     * 角色
     */
    private Integer role;
}
